Pular para o conteúdo principal

Estrutura de Processamento Assíncrono

Visão Geral da Resposta

Requisito de Resposta

Após receber os dados, seu endpoint deve retornar HTTP 200 para confirmar o recebimento.

Estrutura Padrão da Resposta

Para OCR e Tipificação

{
"domain": <string>,
"track": <string>,
"service": <string>,
"requestId": <string>,
"requestType": <string>,
"customerRequestId": <string>,
"executionDatetime": <string>,
"count": 0,
"documents": [
{
"typification": <object (Typification)>,
"ocr": {
"labels": <Array (Labels)>
"template": <string>
}
}
],
"status": <string>
}

Campos Comuns

CampoTipoDescrição
domainstringDomínio SantoID onde a requisição foi processada
trackstringID do track (processo) relacionado
servicestringServiço que realizou o processamento
requestIdstringID único gerado pelo SantoID
customerRequestIdstringID externo para agrupamento de requisições (opcional)
requestTypestringTipo original da requisição
executionDatetimestringTimestamp do processamento (UTC ISO)
countintNúmero de documentos processados
statusstringStatus geral do processamento
statusstringStatus geral do processamento
documentslist(object)Corpo da resposta de processamento com resultados coletados.

Os objetos são relativos ao tipo de processamento – se um documento não requer certas etapas (tipificação, ocr), o objeto relacionado não será retornado.

objects:

Resposta Específica para FaceMatch

{
"domain": "string",
"track": "string",
"service": "string",
"requestId": "string",
"requestType": "string",
"customerRequestId": "string",
"executionDatetime": "string",
"error": {
"error": "string"
},
"status": "string",
"comparison_score": 0.0,
"similarity_score": 0.0,
"match": false
}

Campos Exclusivos do FaceMatch

CampoTipoDescrição
comparison_scorefloatDistância entre rostos (valores menores indicam mais similaridade)
similarity_scorefloatPontuação de similaridade facial (0-1)
matchbooleanIndica se os rostos pertencem à mesma pessoa
errorobjectDetalhes do erro, se aplicável

Resposta de Workflow

{
"domain": "string",
"track": "string",
"service": "string",
"requestId": "string",
"requestType": "string",
"customerRequestId": "string",
"executionDatetime": "string",
"count": 0,
"documents": [
{
"workflow": "list(object_workflow)"
}
],
"status": "string",
"rejectedReasons": ["string"]
}

Campos Exclusivos do Workflow

CampoTipoDescrição
rejectedReasonsstring[]Razões de rejeição de acordo com políticas definidas
documentslist(object)list(object_workflow) - Corpo da resposta de processamento com resultados coletados. object: - Workflow

Documentação Detalhada por Tipo

Melhores Práticas
  1. Implemente validação de requestId para evitar processamento duplicado
  2. Armazene executionDatetime com fuso horário UTC
  3. Para Workflow, sempre verifique rejectedReasons mesmo em caso de sucesso
  4. Para FaceMatch, considere thresholds personalizados para match